iT邦幫忙

2022 iThome 鐵人賽

DAY 7
0

Part1:今日目標

1.資料集前處理2nd


Part2:內容

1.資料集前處理2nd:資料貼標(data labeling)

(1) 所有資料集貼標(label),以做後續模型訓練,共有4個步驟

Step0: Import & set path

from os import listdir
from tqdm import tqdm
import numpy as np
import pandas as pd

prjt_path = r"D:\JPNB\learning_AIdea2022"
train_data_path = str(prjt_path + r"\train_data")
output_path = str(prjt_path + r"\output")

Step1: 疊代讀取圖片所在資料夾,建立字典(dict)後轉成dataframe

def get_all_files(path):
    files_List = listdir(path)  # list 
    return files_List
    
plant_class_list = get_all_files(train_data_path)

# Create dict to save img_name:plant_class pairs
plant_class_img_name_dict = {}
for plant_class in tqdm(class_list):
    folder_path = str(train_data_path + r"\{}".format(plant_class))
    img_name_list = get_all_files(folder_path)
    for img_name in img_name_list:
        plant_class_img_name_dict[img_name] = plant_class

plant_class_img_name_dict

# Convert dict to dataframe
plant_class_df = pd.DataFrame(plant_class_img_name_dict.items(), columns=["Img", "label"])
plant_class_df.head(5)


Step2: 讀取官方提供的圖片資訊

tag_df = pd.read_csv(prjt_path + r"\tag_locCoor.csv", encoding = "Big5")
tag_df.head()


Step3:將前述兩步驟的資料表串接,即可得到每張圖片的完整資訊。

tag_df_label = tag_df.merge(plant_class_df, on="Img", how="left")  # left join

tag_df_label.to_csv(prjt_path + r"\tag_locCoor_label.csv", encoding = "Big5")  # save
print(tag_df_label.columns)
tag_df_label.head(5)

Part3:專案進度

  • 訓練資料貼標完成

Part4:下一步

  • 將有標籤的準心裁切圖片搭配D6所建立的CNN模型,訓練基準模型(Baseline model)。
心得小語:
今日工作時有兩件事特別開心: 被同事請教「工具變數(Instrumental variable, IV)」的統計思維和套件操作,離大學記憶實在有點遙遠,趕緊求助Google大神,雖然中間有一度快被同事問倒,但似乎有幫忙到一點,能夠切磋交流感到特別開心呀!

第二件事情則是和同事討論資料整理,因為大批字串編碼要整合並按字串長度分類,這些資料目前全都攤在一個word檔案(還不是excel或csv??,今天發完鐵人文章後,就要有請Python出馬,把這些代碼自動化統一整理,對於能幫忙同事避免手動輸入資料,感到特別興奮和期待呀~~!!
明天見囉~各位
今日工時: 50min*1

對於能成為一位能幫助他人的人,感到十分滿足愉快,也有更多動力激勵自己持續學習!
MOTIVATION & SATISFACTION come from helping others.


上一篇
D6-運行範例CNN模型
下一篇
D8-資料集前處理3rd:建立Dataset
系列文
菜鳥工程師第一個電腦視覺(CV)專案-農作物影像辨識競賽32
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言